package com.waikuai.shop.vo;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 订单列表视图对象
 * @author waikuai
 */
@Data
public class OrderListVO {

    /**
     * 订单ID
     */
    private Long id;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 订单总金额
     */
    private BigDecimal totalAmount;

    /**
     * 实际支付金额
     */
    private BigDecimal actualAmount;

    /**
     * 支付状态：0-未支付，1-已支付
     */
    private Integer paymentStatus;

    /**
     * 订单状态：0-待支付，1-待发货，2-配送中，3-待取件，4-已完成，5-已取消
     */
    private Integer orderStatus;

    /**
     * 订单明细列表（只包含部分信息用于列表展示）
     */
    private List<OrderItemSimpleVO> orderItems;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 订单明细简单信息
     */
    @Data
    public static class OrderItemSimpleVO {
        /**
         * 商品ID
         */
        private Long productId;

        /**
         * 商品名称
         */
        private String productName;

        /**
         * 商品图片
         */
        private String productImage;

        /**
         * 单价
         */
        private BigDecimal unitPrice;

        /**
         * 数量
         */
        private Integer quantity;
    }
}
